-- Converted using Mokiros's Model to Script Version 3 -- Converted string size: 1220 characters local function Decode(str) local StringLength = #str -- Base64 decoding do local decoder = {} for b64code, char in pairs(('ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/='):split('')) do decoder[char:byte()] = b64code-1 end local n = StringLength local t,k = table.create(math.floor(n/4)+1),1 local padding = str:sub(-2) == '==' and 2 or str:sub(-1) == '=' and 1 or 0 for i = 1, padding > 0 and n-4 or n, 4 do local a, b, c, d = str:byte(i,i+3) local v = decoder[a]*0x40000 + decoder[b]*0x1000 + decoder[c]*0x40 + decoder[d] t[k] = string.char(bit32.extract(v,16,8),bit32.extract(v,8,8),bit32.extract(v,0,8)) k = k + 1 end if padding == 1 then local a, b, c = str:byte(n-3,n-1) local v = decoder[a]*0x40000 + decoder[b]*0x1000 + decoder[c]*0x40 t[k] = string.char(bit32.extract(v,16,8),bit32.extract(v,8,8)) elseif padding == 2 then local a, b = str:byte(n-3,n-2) local v = decoder[a]*0x40000 + decoder[b]*0x1000 t[k] = string.char(bit32.extract(v,16,8)) end str = table.concat(t) end local Position = 1 local function Parse(fmt) local Values = {string.unpack(fmt,str,Position)} Position = table.remove(Values) return table.unpack(Values) end local Settings = Parse('B') local Flags = Parse('B') Flags = { --[[ValueIndexByteLength]] bit32.extract(Flags,6,2)+1, --[[InstanceIndexByteLength]] bit32.extract(Flags,4,2)+1, --[[ConnectionsIndexByteLength]] bit32.extract(Flags,2,2)+1, --[[MaxPropertiesLengthByteLength]] bit32.extract(Flags,0,2)+1, --[[Use Double instead of Float]] bit32.band(Settings,0b1) > 0 } local ValueFMT = ('I'..Flags[1]) local InstanceFMT = ('I'..Flags[2]) local ConnectionFMT = ('I'..Flags[3]) local PropertyLengthFMT = ('I'..Flags[4]) local ValuesLength = Parse(ValueFMT) local Values = table.create(ValuesLength) local CFrameIndexes = {} local ValueDecoders = { --!!Start [1] = function(Modifier) return Parse('s'..Modifier) end, --!!Split [2] = function(Modifier) return Modifier ~= 0 end, --!!Split [3] = function() return Parse('d') end, --!!Split [4] = function(_,Index) table.insert(CFrameIndexes,{Index,Parse(('I'..Flags[1]):rep(3))}) end, --!!Split [5] = {CFrame.new,Flags[5] and 'dddddddddddd' or 'ffffffffffff'}, --!!Split [6] = {Color3.fromRGB,'BBB'}, --!!Split [7] = {BrickColor.new,'I2'}, --!!Split [8] = function(Modifier) local len = Parse('I'..Modifier) local kpts = table.create(len) for i = 1,len do kpts[i] = ColorSequenceKeypoint.new(Parse('f'),Color3.fromRGB(Parse('BBB'))) end return ColorSequence.new(kpts) end, --!!Split [9] = function(Modifier) local len = Parse('I'..Modifier) local kpts = table.create(len) for i = 1,len do kpts[i] = NumberSequenceKeypoint.new(Parse(Flags[5] and 'ddd' or 'fff')) end return NumberSequence.new(kpts) end, --!!Split [10] = {Vector3.new,Flags[5] and 'ddd' or 'fff'}, --!!Split [11] = {Vector2.new,Flags[5] and 'dd' or 'ff'}, --!!Split [12] = {UDim2.new,Flags[5] and 'di2di2' or 'fi2fi2'}, --!!Split [13] = {Rect.new,Flags[5] and 'dddd' or 'ffff'}, --!!Split [14] = function() local flags = Parse('B') local ids = {"Top","Bottom","Left","Right","Front","Back"} local t = {} for i = 0,5 do if bit32.extract(flags,i,1)==1 then table.insert(t,Enum.NormalId[ids[i+1]]) end end return Axes.new(unpack(t)) end, --!!Split [15] = function() local flags = Parse('B') local ids = {"Top","Bottom","Left","Right","Front","Back"} local t = {} for i = 0,5 do if bit32.extract(flags,i,1)==1 then table.insert(t,Enum.NormalId[ids[i+1]]) end end return Faces.new(unpack(t)) end, --!!Split [16] = {PhysicalProperties.new,Flags[5] and 'ddddd' or 'fffff'}, --!!Split [17] = {NumberRange.new,Flags[5] and 'dd' or 'ff'}, --!!Split [18] = {UDim.new,Flags[5] and 'di2' or 'fi2'}, --!!Split [19] = function() return Ray.new(Vector3.new(Parse(Flags[5] and 'ddd' or 'fff')),Vector3.new(Parse(Flags[5] and 'ddd' or 'fff'))) end --!!End } for i = 1,ValuesLength do local TypeAndModifier = Parse('B') local Type = bit32.band(TypeAndModifier,0b11111) local Modifier = (TypeAndModifier - Type) / 0b100000 local Decoder = ValueDecoders[Type] if type(Decoder)=='function' then Values[i] = Decoder(Modifier,i) else Values[i] = Decoder[1](Parse(Decoder[2])) end end for i,t in pairs(CFrameIndexes) do Values[t[1]] = CFrame.fromMatrix(Values[t[2]],Values[t[3]],Values[t[4]]) end local InstancesLength = Parse(InstanceFMT) local Instances = {} local NoParent = {} for i = 1,InstancesLength do local ClassName = Values[Parse(ValueFMT)] local obj = Instance.new(ClassName) local MeshPartMesh,MeshPartScale local Parent = Instances[Parse(InstanceFMT)] local PropertiesLength = Parse(PropertyLengthFMT) local AttributesLength = Parse(PropertyLengthFMT) Instances[i] = obj for i = 1,PropertiesLength do local Prop,Value = Values[Parse(ValueFMT)],Values[Parse(ValueFMT)] obj[Prop] = Value end if MeshPartMesh then if MeshPartMesh.MeshId=='' then if MeshPartMesh.TextureId=='' then MeshPartMesh.TextureId = 'rbxasset://textures/meshPartFallback.png' end MeshPartMesh.Scale = obj.Size end end for i = 1,AttributesLength do obj:SetAttribute(Values[Parse(ValueFMT)],Values[Parse(ValueFMT)]) end if not Parent then table.insert(NoParent,obj) else obj.Parent = Parent end end local ConnectionsLength = Parse(ConnectionFMT) for i = 1,ConnectionsLength do local a,b,c = Parse(InstanceFMT),Parse(ValueFMT),Parse(InstanceFMT) Instances[a][Values[b]] = Instances[c] end return NoParent end local Objects = Decode('AAA1IQpBdHRhY2htZW50IQ9QYXJ0aWNsZUVtaXR0ZXIhBE5hbWUhA3JlZCEFQ29sb3IoAgAAAAD/AAAAAIA//wAAIQREcmFnAwAAAAAAABRAIQdFbmFibGVkAiEITGlmZXRpbWURAACAPwAAgD8hDUxpZ2h0RW1pc3Npb24DAAAAYLge5T8hDExvY2tlZFRvUGFydCIh' ..'C09yaWVudGF0aW9uAwAAAAAAAAhAIQRSYXRlAwAAAAAAQG9AIQhSb3RTcGVlZBEAADRDAAA0QyEIUm90YXRpb24RAAC0wwAAtEMhBFNpemUpAwAAAAAAAABBAACAP+Olmz4AABBBAAAAPwAAgD8AAAAAAAAAACEFU3BlZWQRAACAPwAAQEAhC1NwcmVhZEFuZ2xlCwAA' ..'NEMAADRDIQdUZXh0dXJlISpodHRwOi8vd3d3LnJvYmxveC5jb20vYXNzZXQvP2lkPTc0NDc4NTQ5NTIhDFRyYW5zcGFyZW5jeSkDAAAAAAAAgD8AAAAAmpmZPs3MTD7NzMw9AACAPwAAgD8AAAAAIQdaT2Zmc2V0IQdyZWRhdXJhAwAAAMDMzOw/AwAAAAAAAGlAKQIA' ..'AAAAAAAAAAAAAAAAAIA/AAAgQQAAAAALAAC0QwAAtEMhF3JieGFzc2V0aWQ6Ly83MjE2ODU2MTU4KQUAAAAAAACAPwAAAACCZdE9AACAPwAAAADNzEw+AAAAPwAAAACamRk/AAAAPwAAAAAAAIA/AACAPwAAAAAhCWJsYWNrYXVyYSgCAAAAAAAAAAAAgD8AAAARAADA' ..'PwAAwD8DAAAAAAAA4D8pAwAAAAAAAAAAAAAAAIlBAD8AABBBAAAAAAAAgD8AAAAAAAAAACEXcmJ4YXNzZXRpZDovLzcyMTY4NTIxMjEpAwAAAAAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAgD8AAIA/AAAAAAMAAAAAAAAYQCEFYmxhY2sRAAA0wwAANMMpAwAAAAAAAAAA' ..'AAAAAIlBAD8AABBBAACAPwAAgD8AAAAAAAAAAAUBAAAAAgERAAMEBQYHCAkKCwwNDg8QERITFBUWFxgZGhscHR4fICEiIwgCAQ4AAyQFBgkKCwwNJRESEyYVGBknGwwdKB8pISojEgIBEQADKwUsBwgJCgstDS4PEBESExQVGBcYGS8bHB0eHzAhMSMyAgERAAMzBSwH' ..'CAkKCy0NLg8QERITFBU0FxgZNRscHR4fICExIwgA') local char=owner.Character local lastpos=char.HumanoidRootPart.Position local att=Objects[1] local sound=Instance.new("Sound") sound.SoundId="rbxassetid://9116426650" sound.Volume=1.25 sound.RollOffMaxDistance=75 sound.RollOffMode=Enum.RollOffMode.InverseTapered local highlight=Instance.new('Highlight') highlight.OutlineTransparency=1 highlight.FillTransparency=.33 highlight.DepthMode=Enum.HighlightDepthMode.Occluded highlight.FillColor=Color3.new(.5,0,0) local scary local function died() lastpos=char.HumanoidRootPart.Position highlight:Clone().Parent=char for _,v in pairs(char:GetDescendants())do if v:IsA("BasePart")then v.Anchored=true end end task.wait(.75) local boo=sound:Clone() local invis=Instance.new("Part") invis.Transparency=1 invis.CanCollide=false invis.CanTouch=false invis.Position=lastpos invis.Anchored=true invis.Parent=workspace game:GetService("Debris"):AddItem(invis,8) scary=att:Clone() scary.Parent=invis for _,v in pairs(scary:GetChildren())do v.Enabled=true end boo.Parent=char:FindFirstChild("HumanoidRootPart") boo:Play() boo.Ended:Connect(function() owner:LoadCharacter() boo:Destroy() end) end owner.CharacterAdded:Connect(function(ch) char=ch for _,v in pairs(scary:GetChildren())do v.Enabled=false end task.wait(.02) char:MoveTo(lastpos) char:FindFirstChildOfClass("Humanoid").Died:Connect(died) end) char:FindFirstChildOfClass("Humanoid").Died:Connect(died)